package com.jingdianjichi.subject.infra.basic.ES.SpringData版本.entity;


import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.data.annotation.Id;
import org.springframework.data.elasticsearch.annotations.Document;
import org.springframework.data.elasticsearch.annotations.Field;
import org.springframework.data.elasticsearch.annotations.FieldType;

import java.util.Date;

/***
 * 和ES交互的实体对象亲亲,题目的实体类,我们最需要存储的就是题目信息了亲
 */
/*
@Data
@AllArgsConstructor             //有参构造
@NoArgsConstructor              //无参构造
@Document(indexName = "subject_index",createIndex = false)      //这里指定你的索引库的名称,这个实体是作为文档来的亲
//createIndex就是不在项目启动的时候,创建索引,我们手动创建亲
public class SubjectInfoES {
    //题目的信息存储进去亲,如果做全文检索的时候,我们需要查的就是题目的名称和题目的内容了亲

    @Field(type = FieldType.Long)           //这些都是SpringData的注解亲,这个要和mapping字段的映射一样的亲
    @Id                                     //他要知道谁是这个实体的主键亲
    private Long id;

    //题目名称
    @Field(type = FieldType.Text,analyzer = "ik_smart")         //指定一下分词器
    private String subjectName;

    //题目名称
    @Field(type = FieldType.Text,analyzer = "ik_smart")
    private String subjectAnswer;

    //出题人
    @Field(type = FieldType.Keyword)
    private String createUser;

    //创建时间
    @Field(type = FieldType.Date,index = false)             //时间不参与索引搜索的
    private Date createTime;
}
 */
